using System;
using System.Runtime.Serialization;
namespace Net35.Xrm.Sdk.Messages
{
	[DataContract(Namespace = "http://schemas.microsoft.com/xrm/2011/Contracts")]
	public sealed class RetrieveAttributeRequest : OrganizationRequest
	{
		public string EntityLogicalName
		{
			get
			{
				if (base.Parameters.Contains("EntityLogicalName"))
				{
					return (string)base.Parameters["EntityLogicalName"];
				}
				return null;
			}
			set
			{
				base.Parameters["EntityLogicalName"] = value;
			}
		}
		public string LogicalName
		{
			get
			{
				if (base.Parameters.Contains("LogicalName"))
				{
					return (string)base.Parameters["LogicalName"];
				}
				return null;
			}
			set
			{
				base.Parameters["LogicalName"] = value;
			}
		}
		public int ColumnNumber
		{
			get
			{
				if (base.Parameters.Contains("ColumnNumber"))
				{
					return (int)base.Parameters["ColumnNumber"];
				}
				return 0;
			}
			set
			{
				base.Parameters["ColumnNumber"] = value;
			}
		}
		public Guid MetadataId
		{
			get
			{
				if (base.Parameters.Contains("MetadataId"))
				{
					return (Guid)base.Parameters["MetadataId"];
				}
				return default(Guid);
			}
			set
			{
				base.Parameters["MetadataId"] = value;
			}
		}
		public bool RetrieveAsIfPublished
		{
			get
			{
				return base.Parameters.Contains("RetrieveAsIfPublished") && (bool)base.Parameters["RetrieveAsIfPublished"];
			}
			set
			{
				base.Parameters["RetrieveAsIfPublished"] = value;
			}
		}
		public RetrieveAttributeRequest()
		{
			base.RequestName = "RetrieveAttribute";
			this.MetadataId = default(Guid);
			this.RetrieveAsIfPublished = false;
		}
	}
}
